<!DOCTYPE HTML>

<html lang="pt-br"  
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">
	
<ui:composition template="/WEB-INF/template/VendaTemplate.xhtml">
<ui:define name="corpo">
	<style type="text/css">
	.div-tela 
	{
		max-width: auto;
		max-height: auto;
		padding: 10px 10px 10px;
	    margin: 0 auto 20px;
	    background-color: #fff;
	    border: 1px solid #e5e5e5;
	    -webkit-border-radius: 5px;
	    	-moz-border-radius: 5px;
	        	border-radius: 5px;
	    -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.05);
	    	-moz-box-shadow: 0 1px 2px rgba(0,0,0,.05);
	        	box-shadow: 0 1px 2px rgba(0,0,0,.05);
	}
	.colunaEsquerda
	{  
		text-align: left;
		width: 20%;  
	}  
	.colunaDireita
	{  
		text-align: left;
		width: 80%;    
	}
	.colunaEsquerdaLocalizarCliente
	{  
		text-align: left;
		width: 80%;  
	}  
	.colunaDireitaLocalizarCliente
	{ 
		width: 15%;
	}
	.telaAtendimento
	{
		font-size: 12px;
	}
	.atendido
	{
		background-color: #FFA500;
		color: #000000; 
	}
	.aberto
	{
		
	}
	</style>
<div class="div-tela">
	<p:poll interval="#{atenderAgendaManagerBean.intervaloTempo}"
			immediate="true" 
			update="pnlClientesAgendadados" 
			listener="#{atenderAgendaManagerBean.atualizarComRefresh}"
			autoStart="true"/>
	
	
	<p:panel id="pnlMensagemFinalSemana"
			visible="#{atenderAgendaManagerBean.desabilitaAgenda}">
		<h:outputText value="Agenda Somente para Dias Úteis" style="font-size: 25px;"/>
	</p:panel>
	
	
	
	<p:panel id="pnlTituloAgenda">
		<h:outputText value="Agenda do Dia: " style="font-size: 20px;"/>
		<h:outputText value="#{atenderAgendaManagerBean.agendaVo.dataAgenda}" style="font-size: 20px;">
			<f:convertDateTime pattern="dd/MM/yyyy"/>
		</h:outputText>
	</p:panel>
	
	<div>
		<br/>
	</div>
	
	<p:panel id="pnlAcao"
			header="Ações da Agenda"
			toggleable="true"
			toggleSpeed="100"
			toggleTitle="Expandir">
		<p:commandButton id="btnAtualizarAgenda" 
					value="Atualizar"
					update="pnlClientesAgendadados" 
					styleClass="ui-priority-primary"
					ajax="true"
					actionListener="#{atenderAgendaManagerBean.inicializarAtendimeno}"/>
					
		<p:commandButton id="btnSairAgenda" 
					value="Sair Agenda"
					styleClass="ui-priority-primary"
					actionListener="#{atenderAgendaManagerBean.sairAtendimentoAgenda}"/>
	</p:panel>
	
	<div>
		<br/>
	</div>
	
	<p:panel id="pnlConsultaDadosCliente" 
			header="Consulta Clientes"
			toggleable="true"
			toggleSpeed="100"
			toggleTitle="Expandir">
		<p:panelGrid columns="2" 
					columnClasses="colunaEsquerdaLocalizarCliente, colunaDireitaLocalizarCliente" 
					style="width:100%; border:none;">
			<p:inputText id="txtBusca" 
						value="#{atenderAgendaManagerBean.busca}"
						style="width:100%;"/>
			<p:commandButton id="btnLocalizar" 
						value="Localizar" 
						styleClass="ui-priority-primary"
						actionListener="#{atenderAgendaManagerBean.buscarClientes}"
						update="tblClientes"/>
		</p:panelGrid>
			<p:dataTable id="tblClientes" 
						var="cliente" 
						value="#{atenderAgendaManagerBean.listaClientes}"
						style="font-size:11px;"
						rowStyleClass="linhas"
						scrollable="true"
						scrollHeight="100"
						emptyMessage="Sem Clientes">
						
						<p:column headerText="Código" width="10%">
				            <h:outputText value="#{cliente.id}" />
		        		</p:column>
						
						<p:column headerText="Nome" width="70%">
				            <h:outputText value="#{cliente.razao}" />
		        		</p:column>
		        		
		        		<p:column headerText="Ações" width="20%">
				            <p:commandButton id="btnInserirCliente" 
				            				value="Inserir"
		        							styleClass="ui-priority-primary"
		        							update=":frmVenda:pnlConsultaDadosCliente,:frmVenda:pnlClientesAgendadados"
		        							actionListener="#{atenderAgendaManagerBean.adicionarClienteAgenda(cliente)}"/>
		        							
		        			 <p:commandButton id="btnReagendamentoCliente"
		        			 				value="Reagendamentos"
		        							styleClass="ui-priority-primary"
		        							update=":frmVenda:reagendamentoDetalhePanel"
		        							actionListener="#{atenderAgendaManagerBean.listarReagendamentosCliente(cliente)}"/>
		        		</p:column>
		        		
			</p:dataTable>
	</p:panel>
	
	<div>
		<br/>
	</div>
	
	<p:panel header="Lembretes dos Atendimentos"
			style="width:100%; border:none;">
		<p:dataList value="#{atenderAgendaManagerBean.listaLembrar}" var="lembrete">
			<h:outputText value="#{lembrete.descricao}" style="background-color:##{lembrete.corFundo};color:##{lembrete.corFonte};"/>
		</p:dataList>	
	</p:panel>
		
	<p:panel id="pnlClientesAgendadados" 
			header="Atendimento Clientes"
			toggleable="true"
			toggleSpeed="100"
			toggleTitle="Expandir">
			
		<p:dataTable id="tblAtendimentoClientes" 
					var="clienteAgenda" 
					value="#{atenderAgendaManagerBean.agendaVo.listaAgendaClienteVo}"
					style="font-size:11px;"
					scrollable="true"
					scrollHeight="200"
					emptyMessage="Sem Clientes Para Atendimento">
						
					<p:column width="10%" filterBy="#{clienteAgenda.clienteVo.id}" filterMatchMode="contains" filterStyle="width:100%" style="background-color:##{clienteAgenda.agendaLembrarVo.corFundo};color:##{clienteAgenda.agendaLembrarVo.corFonte};">
				    	<h:outputText value="#{clienteAgenda.clienteVo.id}" />
		        	</p:column>
						
					<p:column width="35%" filterBy="#{clienteAgenda.clienteVo.razao}" filterMatchMode="contains" filterStyle="width:100%" style="background-color:##{clienteAgenda.agendaLembrarVo.corFundo};color:##{clienteAgenda.agendaLembrarVo.corFonte};">
				    	<h:outputText value="#{clienteAgenda.clienteVo.razao}" />
		        	</p:column>
		        	
					<p:column headerText="Ações" width="50%" style="background-color:##{clienteAgenda.agendaLembrarVo.corFundo};color:##{clienteAgenda.agendaLembrarVo.corFonte};">
						<p:commandButton value="Atender" 
										styleClass="ui-priority-primary"
										update=":frmVenda:atendimentoPanel"
										actionListener="#{atenderAgendaManagerBean.atenderCliente(clienteAgenda)}"/>
						
						<p:commandButton value="Atendimentos" 
										styleClass="ui-priority-primary"
										update=":frmVenda:atendimentosPanel"
										actionListener="#{atenderAgendaManagerBean.listaAtendimentos(clienteAgenda)}"/>
										
						<p:commandButton value="Reagendar" 
										styleClass="ui-priority-primary"
										disabled="#{clienteAgenda.flgAjuda eq 'S' ? true : false}"
										update=":frmVenda:reagendamentoPanel"
										actionListener="#{atenderAgendaManagerBean.reagendarCliente(clienteAgenda)}"/>
										
						<p:commandButton value="Reagendamentos" 
										styleClass="ui-priority-primary"
										update=":frmVenda:reagendamentoDetalhePanel"
										actionListener="#{atenderAgendaManagerBean.listarReagendamentosCliente(clienteAgenda)}"/>
										
						<p:commandButton value="Ajuda" 
										styleClass="ui-priority-primary"
										update=":frmVenda:solicitacaoAjudaPanel"
										disabled="#{clienteAgenda.flgAjuda eq 'S' ? true : false}"
										actionListener="#{atenderAgendaManagerBean.carregarSolicitacaoAjuda(clienteAgenda)}"/>
		        	</p:column>
		        		
			</p:dataTable>
			
	</p:panel>	
</div>	
</ui:define>
<ui:define name="modal">
	<p:dialog header="Atendimento" 
    		widgetVar="atendimentoDialog" 
    		modal="true"
    		resizable="false" 
    		width="1000" 
    		position="top" 
    		closable="true">
	<p:panel id="atendimentoPanel">
    	 		
			<p:panelGrid columns="2" 
						columnClasses="colunaEsquerda, colunaDireita" 
						style="width:100%;border:none;">
						
				<p:outputLabel value="Cliente" 
							for="txtCliente"/>
	            <h:outputText id="txtCliente" 
	            			value="#{atenderAgendaManagerBean.agendaClienteVo.clienteVo.razao}"/>
	            			
	            <p:outputLabel value="Descrição Atendimento" 
							for="txtStatus"/>
	            <h:outputText id="txtStatus" 
	            			value="#{atenderAgendaManagerBean.agendaClienteVo.agendaStatusVo.descricao}"/>
	            			
	            <h:outputLabel for="somAgendaLembrar" value="Lembrar"/>			
	            <p:selectOneMenu id="somAgendaLembrar" 
	            				value="#{atenderAgendaManagerBean.agendaClienteVo.agendaLembrarVo.id}" 
	             				style="width:100%;">
	             	<f:selectItems var="lembrar" 
	             				value="#{atenderAgendaManagerBean.listaLembrar}" 
	             				itemLabel="#{lembrar.descricao}" 
	             				itemValue="#{lembrar.id}"/>
	             </p:selectOneMenu>
	            
			</p:panelGrid>
		
			<p:panelGrid columns="2" 
						columnClasses="colunaEsquerda, colunaDireita" 
						style="width:100%;border:none;">		
				<h:outputLabel for="clTempo" 
							value="Horário do Atendimento"/>
                <p:calendar id="clTempo" 
                			value="#{atenderAgendaManagerBean.horaAtual}" 
                			pattern="HH:mm" 
                			timeOnly="true" 
                			disabled="true"/>
				
				<h:outputLabel for="somTipoAtendimento" value="Tipo Atendimento"/>			
	            <p:selectOneMenu id="somTipoAtendimento" 
	            				value="#{atenderAgendaManagerBean.agendaClienteAtendimentoVo.agendaTipoAtendimentoVo.id}" 
	             				style="width:100%;">
	             	<f:selectItems var="tipoAtendimento" 
	             				value="#{atenderAgendaManagerBean.listaTipoAtendimento}" 
	             				itemLabel="#{tipoAtendimento.descricao}" 
	             				itemValue="#{tipoAtendimento.id}"/>
	             </p:selectOneMenu>
				
				<h:outputLabel for="somTipoContato" 
							value="Tipo Contato"/>
				<p:selectOneMenu id="somTipoContato" 
								value="#{atenderAgendaManagerBean.agendaClienteAtendimentoVo.agendaTipoContatoVo.id}"
								style="width:100%;">
					<f:selectItems var="tipoContato" 
								value="#{atenderAgendaManagerBean.listaTipoContato}" 
								itemLabel="#{tipoContato.descricao}"
								itemValue="#{tipoContato.id}"/>
				</p:selectOneMenu>
				
				<p:outputLabel value="Atendimento" 
							for="txtAtendimento"/>
            	<p:inputText id="txtAtendimento" 
            				value="#{atenderAgendaManagerBean.agendaClienteAtendimentoVo.descricaoAtendimento}"
            				style="width:100%;"/>
            	
			</p:panelGrid>
		
			<p:dataTable id="tblAtendimentos" 
					var="atendimentos" 
					value="#{atenderAgendaManagerBean.agendaClienteVo.listaAtendimentos}"
					style="font-size:11px;"
					rowStyleClass="linhas"
					paginator="true"
					rows="5"
					resizableColumns="true"
					emptyMessage="Sem Atendimentos">
						
					<p:column headerText="Quem Atendeu" width="20%">
					<h:outputText value="#{atendimentos.agendaClienteVo.agendaVo.usuarioVo.nomeCompleto}" />
				</p:column>
				
				<p:column headerText="H Inicial" width="8%">
					<h:outputText value="#{atendimentos.horaAtendimento}">
						<f:convertDateTime pattern="HH:mm"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="H Final" width="8%">
					<h:outputText value="#{atendimentos.horaEncerramento}">
						<f:convertDateTime pattern="HH:mm"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="Tp Atendimento" width="20%">
					<h:outputText value="#{atendimentos.agendaTipoAtendimentoVo.descricao}" />
				</p:column>
				
				<p:column headerText="Tp Contato" width="20%">
					<h:outputText value="#{atendimentos.agendaTipoContatoVo.descricao}"/>
				</p:column>
		        		
				<p:column headerText="Desc Atendimento" width="24%">
					<h:outputText value="#{atendimentos.descricaoAtendimento}"/>
				</p:column>
				
			</p:dataTable>
	
	</p:panel>	
		<div>
			<BR />
		</div>
		<p:commandButton id="btnGravarAtendimeno" 
						value="Gravar"
						update="pnlClientesAgendadados"
						styleClass="ui-priority-primary" 
						actionListener="#{atenderAgendaManagerBean.gravarAtendimento}"/>
	</p:dialog>
	<p:dialog header="Regendamento de Cliente" 
    		widgetVar="reagendamentoDialog" 
    		modal="true" 
    		resizable="false" 
    		width="650" 
    		position="top" 
    		closable="true">
    	 <p:panel id="reagendamentoPanel" 
    	 		style="font-size:12px;">
			<p:panelGrid columns="2" 
						columnClasses="colunaEsquerda, colunaDireita" 
						style="width:100%;border:none;">
						
				<p:outputLabel value="Cliente" 
							for="txtClienteReagendamento"/>
				<h:outputText id="txtClienteReagendamento" 
							value="#{atenderAgendaManagerBean.agendaClienteVo.clienteVo.razao}"/>
				
				<p:outputLabel value="Data" for="clnDataReagenadmento"/>
				<p:calendar id="clnDataReagenadmento" 
							value="#{atenderAgendaManagerBean.dataReagendamento}"
							locale="pt"
							validatorMessage="Data em formato inválido."
							pattern="dd/MM/yyyy"
							mindate="#{atenderAgendaManagerBean.dataCorrente}"/>
							
				<h:outputLabel for="somAgendaLembrarReagendamento" value="Lembrar"/>			
	            <p:selectOneMenu id="somAgendaLembrarReagendamento" 
	            				value="#{atenderAgendaManagerBean.agendaClienteReagendamentoVo.agendaLembrarVo.id}" 
	             				style="width:100%;">
	             	<f:selectItems var="lembrarReagendamento" 
	             				value="#{atenderAgendaManagerBean.listaLembrarReagendamento}" 
	             				itemLabel="#{lembrarReagendamento.descricao}" 
	             				itemValue="#{lembrarReagendamento.id}"/>
	             </p:selectOneMenu>
							
				<p:outputLabel value="Motivo" 
							for="txtMotivoReagendamento"/>
            	<p:inputText id="txtMotivoReagendamento" 
            				value="#{atenderAgendaManagerBean.agendaClienteReagendamentoVo.motivoReagendamento}"
            				style="width:100%;"/>
			</p:panelGrid>
			
				<div>
					<BR />
				</div>
				
				<p:commandButton id="btnGravarReagendamento" 
							value="Gravar"
							styleClass="ui-priority-primary" 
							update=":frmVenda:pnlClientesAgendadados"
							actionListener="#{atenderAgendaManagerBean.gravarReagendamento}"/>
		</p:panel>		
	</p:dialog>
	<p:dialog header="Atendimentos" 
			widgetVar="agendaAtendimenosDialog" 
			modal="true"
			resizable="false" 
			width="1000" 
			position="top" 
			closable="true">
		 <p:panel id="atendimentosPanel" 
    	 		style="font-size:12px;">
    	 	<h:outputText value="Cliente:  #{atenderAgendaManagerBean.agendaClienteVo.clienteVo.razao}"/>
    	 	
    	 	<div>
    	 		<BR />
    	 	</div>
    	 		
    	 	<p:dataTable id="tblAtendimento" 
						var="atendimentos" 
						value="#{atenderAgendaManagerBean.agendaClienteVo.listaAtendimentos}"
						style="font-size:11px;"
						rowStyleClass="linhas"
						scrollable="true"
						scrollHeight="350"
						emptyMessage="Sem Dados para Exibição"
						resizableColumns="true">
				        		
				<p:column headerText="Quem Atendeu?" width="20%" resizable="false">
					<h:outputText value="#{atendimentos.agendaClienteVo.agendaVo.usuarioVo.nomeCompleto}" />
				</p:column>
				
				<p:column headerText="H Inicial" width="8%" resizable="false">
					<h:outputText value="#{atendimentos.horaAtendimento}">
						<f:convertDateTime pattern="HH:mm"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="H Final" width="8%" resizable="false">
					<h:outputText value="#{atendimentos.horaEncerramento}">
						<f:convertDateTime pattern="HH:mm"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="Tp Atendimento" width="20%" resizable="false">
					<h:outputText value="#{atendimentos.agendaTipoAtendimentoVo.descricao}" />
				</p:column>
				
				<p:column headerText="Tp Contato" width="20%" resizable="false">
					<h:outputText value="#{atendimentos.agendaTipoContatoVo.descricao}" />
				</p:column>
		        		
				<p:column headerText="Desc Atendimento" width="24%" resizable="true">
					<h:outputText value="#{atendimentos.descricaoAtendimento}" />
				</p:column>
		        		
			</p:dataTable>
			
    	 </p:panel>
	</p:dialog>	
	<p:dialog header="Regendamentos" 
			widgetVar="agendaRegendamentoDialog" 
			modal="true" 
			resizable="false" 
			width="1000" 
			position="top" 
			closable="true">
		 <p:panel id="reagendamentoDetalhePanel" 
    	 		style="font-size:12px;">
    	 	<h:outputText value="Cliente:  #{atenderAgendaManagerBean.agendaClienteVo.clienteVo.razao}"/>
    	 	
    	 	<div>
    	 		<BR />
    	 	</div>
    	 		
    	 	<p:dataTable id="tblReagendamento" 
						var="reagendamentos" 
						value="#{atenderAgendaManagerBean.listaReagendamentos}"
						style="font-size:11px;"
						rowStyleClass="linhas"
						scrollable="true"
						scrollHeight="350"
						emptyMessage="Sem Dados para Exibição">
				        		
				<p:column headerText="Quem Reagendou?" width="20%">
					<h:outputText value="#{reagendamentos.usuarioVo.nomeCompleto}" />
				</p:column>
				
				<p:column headerText="Dt Solicitacao" width="20%">
					<h:outputText value="#{reagendamentos.dataMovimento}">
						<f:convertDateTime pattern="dd/MM/yyyy"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="Dt Reagendamento" width="20%">
					<h:outputText value="#{reagendamentos.dataReagendamento}">
						<f:convertDateTime pattern="dd/MM/yyyy"/>
					</h:outputText>
				</p:column>
				
				<p:column headerText="Motivo Reagendamento" width="40%">
					<h:outputText value="#{reagendamentos.motivoReagendamento}" />
				</p:column>
		        		
			</p:dataTable>
			
    	 </p:panel>
	</p:dialog>	
	<p:dialog header="Solicitar Ajuda Atendimento" 
    		widgetVar="solicitacaoAjudaDialog" 
    		modal="true" 
    		resizable="false" 
    		width="700" 
    		position="top" 
    		closable="true">
    	 <p:panel id="solicitacaoAjudaPanel" 
    	 		style="font-size:12px;">
			<p:panelGrid columns="2" 
						columnClasses="colunaEsquerda, colunaDireita" 
						style="width:100%;border:none;">
						
				<h:outputLabel for="somUsuarioSolicitado" 
							value="Usuário Solicitado"/>			
				<p:selectOneMenu id="somUsuarioSolicitado" 
								value="#{atenderAgendaManagerBean.agendaSolicitacaoAjudaVo.usuarioSolicitado.id}"
								style="width:100%;">
					<f:selectItem itemLabel="Selecione Usuário" 
	             				itemValue=""/>
					<f:selectItems var="usuarioSolicitado" 
								value="#{atenderAgendaManagerBean.listaUsuario}" 
								itemLabel="#{usuarioSolicitado.nomeCompleto}"
								itemValue="#{usuarioSolicitado.id}"/>
				</p:selectOneMenu>
				
							
				<p:outputLabel value="Solicitação" 
							for="txtDescricaoSolicitacao"/>
            	<p:inputText id="txtDescricaoSolicitacao" 
            				value="#{atenderAgendaManagerBean.agendaSolicitacaoAjudaVo.descricaoSolicitacao}"
            				style="width:100%;"/>
			</p:panelGrid>
			
				<div>
					<BR />
				</div>
				
				<p:commandButton id="btnGravarSolicitacaoAjuda" 
							value="Gravar"
							styleClass="ui-priority-primary" 
							update=":frmVenda:pnlClientesAgendadados"
							actionListener="#{atenderAgendaManagerBean.gravarSolicitacaoAjuda}"/>
		</p:panel>		
	</p:dialog>
</ui:define>

</ui:composition>
</html>